using System;
using System.Runtime.InteropServices;
using System.ComponentModel;
using MH.WsdlWorks.ProjectModel;

namespace MH.WsdlWorks
{
    [CLSCompliant(false), ComVisible(true)]
    public class OperationNodeProperties : SimpleNodeProperties
    {
        Operation operation;

        public OperationNodeProperties(OperationNode operationNode)
            : base(operationNode)
        {
            this.operation = operationNode.Operation;
        }

        public override string GetClassName()
        {
            return "Operation";
        }

        [Category("Misc")]
        [DisplayName("Service URL")]
        [Description("The URL of the service provided by the WSDL file")]
        public string ServiceUrl
        {
            get
            {
                return operation.ServiceUrl;
            }
        }

        [Category("Misc")]
        [DisplayName("Soap Action")]
        [Description("The Soap action represented by this operation")]
        public string SoapAction
        {
            get
            {
                return operation.SoapAction;
            }
        }
    }
}
